package Model;

import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import PrimaryKey.InterfaceKey;
import PrimaryKey.ProfessorPK;

@Entity
public class Professor implements InterfacePadraoEntidade {
	
	@EmbeddedId
	private ProfessorPK professorPK= new ProfessorPK();
	private String nomeProfessor = null;
	private String cpfProfessor = null;
	private String status = null;
	private String titulo = null;
	private String nascimento = null;
	
	public String getNomeProfessor() {
		return nomeProfessor;
	}

	public String getNascimento() {
		return nascimento;
	}
	
	public String getTitulo() {
		return titulo;
	}
	
	public void setNascimento(String nascimento) {
		this.nascimento = nascimento;
	}
	
	public void setTitulo(String titulo) {
		this.titulo = titulo;
	}
	
	public void setNomeProfessor(String nomeProfessor) {
		this.nomeProfessor = nomeProfessor;
	}

	public String getCpfProfessor() {
		return cpfProfessor;
	}

	public void setCpfProfessor(String cpfProfessor) {
		this.cpfProfessor = cpfProfessor;
	}

	public String getStatus() {
		return status;
	}

	public void setStatus(String status) {
		this.status = status;
	}
	
	public String getCodigo() {
		return professorPK.getCodigo();
	}

	public void setCodigo(String aValue) {
		this.professorPK.setCodigo(aValue);
	}

	@Override
	public ProfessorPK getCodigoKEY() {
		return professorPK;
	}

	@Override
	public void setCodigoKEY(InterfaceKey chaveEntidade) {
		this.professorPK = (ProfessorPK) chaveEntidade;
	}

	/**
	 * Metodo que enumera todos os atributos afim explicita-los ou compara-los com outos objetos
	 **/
	@Override
	public String toString() {
		return "" +
			this.professorPK.toString() +
			this.nomeProfessor +
			this.cpfProfessor +
			this.status +
			this.titulo +
			this.nascimento;
	}

}
